package eva.savant.businessobject.ad;

import javax.persistence.*;
import java.util.Collection;

@Table(name="AD_ROL")
@javax.persistence.Entity(name = "ad.Rol")
public class Rol extends eva.savant.businessobject.Entity {

    @Id
    @Column(name = "ID_ROL", length = 4, nullable = false)
    private String id; //ID Rol

    @ManyToOne
    @JoinColumn(name = "ID_MENU", nullable = false)
    private Menu menu; //ID Menu Raiz

    @ManyToOne
    @JoinColumn(name = "ID_SISTEMA", nullable = false)
    private Sistema sistema; //ID Sistema

    @Basic
    @Column(name = "CODIGO", length = 2, nullable = false)
    private String codigo; //Codigo

    @Basic
    @Column(name = "NOMBRE", length = 30, nullable = false)
    private String nombre; //Nombre

    @OneToMany
    (mappedBy = "rol")
    private Collection<UsuarioRol> lsUsuarioRol;


    public Rol(String id, Menu menu, Sistema sistema, String codigo, String nombre, Integer operacionId, String sociedadId, Integer usuarioId) {

        this.id= id;

        this.menu= menu;

        this.sistema= sistema;

        this.codigo= codigo;

        this.nombre= nombre;

        this.operacionId= operacionId;

        this.sociedadId= sociedadId;

        this.usuarioId= usuarioId;

    }

    public Rol() {

    }


    public String getId() {
    
        return id;
    }
    
    public void setId(String id) {
    
        this.id = id;
    }

    public Menu getMenu() {
    
        return menu;
    }
    
    public void setMenu(Menu menu) {
    
        this.menu = menu;
    }

    public Sistema getSistema() {
    
        return sistema;
    }
    
    public void setSistema(Sistema sistema) {
    
        this.sistema = sistema;
    }

    public String getCodigo() {
    
        return codigo;
    }
    
    public void setCodigo(String codigo) {
    
        this.codigo = codigo;
    }

    public String getNombre() {
    
        return nombre;
    }
    
    public void setNombre(String nombre) {
    
        this.nombre = nombre;
    }

    public Collection<UsuarioRol> getLsUsuarioRol() {
    
        return lsUsuarioRol;
    }
    
    public void setLsUsuarioRol(Collection<UsuarioRol> lsUsuarioRol) {
    
        this.lsUsuarioRol = lsUsuarioRol;
    }

}
